In industrial automation installations in particular, it is particularly important for the automatic operations to be accurately coordinated with one another. Via the individual network nodes communicating with one another in the communication network each having internal clocks and via synchronization messages being transmitted in order to synchronize all internal clocks, accurate coordination is achieved. The internal clock of a respective network node operates at a corresponding node clock frequency that may possibly be different for the individual network nodes. The clocks are synchronized on the basis of a predefined reference clock (“grandmaster clock”) or its reference clock frequency, the synchronization messages being transmitted on the basis of the reference clock frequency. Synchronization messages are transmitted at fixed clock intervals according to the reference clock frequency. The individual synchronization messages transmitted in the communication network contain the clock count state of the reference clock. Each network node updates the clock count state for its own requirements by estimating the number of clock pulses of the reference clock between the emission of the synchronization message in the preceding network node and the reception of the synchronization message in the respective network node (“line delay”). In addition, each network node updates the clock count state for the next node by also estimating the number of clock pulses of the reference clock between its reception of the synchronization message and its emission of the synchronization message (“bridge delay”). The estimation may be carried out, inter alia, by estimating the clock ratio (also referred to as the “Rate Compensation Factor” RCF) between the reference clock frequency and the node clock frequency of the respective network node. The number of clock pulses of the node clock frequency can then be converted into the corresponding number of the reference clock frequency for any desired period of time using the estimated clock ratio. For example, the period of time between the emission of a synchronization message in the preceding network node and the emission of the synchronization message in the respective network node, measured in clock pulses of the node clock frequency, can therefore be converted into the clock pulses of the reference clock frequency. The resulting number of clock pulses is then added to the clock pulses of the received synchronization message, and an accordingly updated synchronization message is emitted by the corresponding network node again.
In the field of industrial automation technology, the IEC 61158 Type 10 standard (called PROFINET) is known from the prior art and involves an Ethernet which satisfies industrial specifications. The PROFINET standard operates according to the principle explained above, according to which the clock count states in the synchronization messages are updated in the network nodes. In order to synchronize the internal clocks of the network nodes, systems based on PROFINET use the Precision Transparent Clock Protocol (PTCP) according to IEC 61158 Type 10 PTCP that may be also referred to as a profile in the IEEE 1588 V2 standard.
The protocol updates the clock count states of the synchronization messages according to the principle explained above. According to the standard, synchronization messages are transmitted in succession from one network node to the next in a logical sequence or tree structure. The synchronization messages come from a reference node or master element that is the first element in the sequence or in the tree structure. The synchronization messages originally contain a time stamp of the counter of a reference clock in the reference node if a synchronization message has been transmitted. The network nodes in the sequence or tree structure, also called slaves, process and retransmit the information. A network node adds all estimated time delays between the emission of a synchronization message by the preceding network node and its own emission of the synchronization message to the synchronization message as contents.
A specific implementation is described in R. Lupas Scheiterer, C. Na, D. Obradovic and G. Steindl: “Synchronization Performance of the Precision Time Protocol in Industrial Automation Networks”, ISPCS07 Special Issue of the IEEE Transactions on Instrumentation and Measurement, June 2009, Volume 58, Issue 6, pp. 1849-1857.
EP 2034642 A1 discloses a method in which the synchronization messages transmitted in the communication network contain the clock count state (or the estimated clock count state after the first slave) of the reference clock which operates at a reference clock frequency. The clock count state is estimated by each network node and is updated in the synchronization message. When estimating the clock count state, changes in the reference clock frequency are taken into account. The clock count state is accurately determined by approximating the temporal change in the clock ratio between the reference clock frequency and the node clock frequency by a function, as a result of which it is possible to predict the clock ratio when emitting a new synchronization message and a precise current clock count state can be determined on the basis of the predicted clock ratio.
EP 2299614 A2 discloses a method for time synchronization in a communication network that may be used to further improve the estimation of the clock count state of the reference clock. A controlled clock count state that represents an estimation of the reference clock count state and has a continuous profile, is determined for at least one network node with the aid of a controller. The previously determined, estimated reference clock count state is post-processed in each network node with the aid of a controller. Advantageously, the controller reduces noise across the estimated reference clock count state and uses the controlled clock count state to provide a continuous synchronized time (with a continuous profile) for each network node, as is required for many industrial requirements. Therefore, with predefined accuracy for the time synchronization, a greater number of network nodes can be included as a result of the use of the controller.
Therefore, the estimated reference clock count state is no longer used as an estimation of the reference clock count state for each network node's own requirements (but not for the forwarding to the next network node). Rather, the controlled clock count state is determined by tracking the estimated reference clock count state using the controller. The jumps in the estimated reference clock count state during recalculation after receiving a synchronization message may not be tolerated in many industrial applications. Therefore the jumps are converted into the continuous profile of the controlled clock count state. Disruptions in time-dependent processes are therefore reduced. In addition, the controlled clock count state on average has a smaller deviation from the reference clock count state than the estimated reference clock count state.